<?php 
require_once('FirePHPCore/FirePHP.class.php');
ob_start();

class ControllerSegurosSegurosCotizacion extends Controller{
	
		
	public function renderFormularioCotizacion(){
  		//instanciar un objeto de la clase FirePHP
  		$mifirePHP = FirePHP::getInstance(true);
  		//evito que se muestren los mensajes en la consola de firebug
  		//$mifirePHP->setEnabled(false);
  		 
  		$this->load->model('seguros/seguroscotizacion');
  		$this->data['armadoras'] = $this->model_seguros_seguroscotizacion->obtenerArmadoras();
  		
  		$mifirePHP->log($this->data['armadoras'] , "ARMADORAS: ");
  
  		 
  			
  		 
  		 
		  	if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/seguros/seguros-cotizacion.tpl')) {
					$this->template = $this->config->get('config_template') . '/template/seguros/seguros-cotizacion.tpl';
				} else {
					$this->template = 'default/template/seguros/seguros-cotizacion.tpl';
				}
  		
  		return $this->response->setOutput($this->render());
  			
  	}
  	
  	public function jxSubmitFormSolicitudCotizacion() {
  		 
  		//instanciar un objeto de la clase FirePHP
  		$mifirePHP = FirePHP::getInstance(true);
  		//evito que se muestren los mensajes en la consola de firebug
  		//$mifirePHP->setEnabled(false);
  		$this->load->model('seguros/usuariocotizacion');
  		$this->load->model('seguros/cotizacion');
  		$datosUsuarioCotizacion = array();
  		$datosCotizacion = array();
  		
  		
  			
  			
  		
  		 
  		//Datos de informacion del auto: nombre auto, vendedor, fecha deseada
  		 
  		
  		 
        $segurocotizacion_name = trim($this->request->post['segurocotizacion-name']);
  		$segurocotizacion_apellidos = trim($this->request->post['segurocotizacion-apellidos']);
  		$segurocotizacion_email = $this->request->post['segurocotizacion-email'];
  		$segurocotizacion_telefono = $this->request->post['segurocotizacion-telefono'];
  		$segurocotizacion_genero = $this->request->post['segurocotizacion-genero'];
  		$segurocotizacion_edad = $this->request->post['segurocotizacion-edad'];
  		$segurocotizacion_persona = $this->request->post['segurocotizacion-persona'];
  		$segurocotizacion_armadora = $this->request->post['segurocotizacion-armadora'];
  		$segurocotizacion_marca = $this->request->post['segurocotizacion-marca'];
  		$segurocotizacion_version = $this->request->post['segurocotizacion-version'];
  		$segurocotizacion_estado = $this->request->post['segurocotizacion-estado'];
  		$segurocotizacion_cp = $this->request->post['segurocotizacion-codigoPostal'];
  		$segurocotizacion_cobertura = $this->request->post['segurocotizacion-cobertura'];
  		$segurocotizacion_formapago = $this->request->post['segurocotizacion-formapago'];
  		
  		
  		//segurocotizacion-armadora 
  			
  		//DEBUG DE DATOS
  		$mifirePHP->log($segurocotizacion_name, "NOMBRE: ");
  		$mifirePHP->log($segurocotizacion_apellidos, "APELLIDOS: ");
  		$mifirePHP->log($segurocotizacion_email, "EMAIL: ");
  		$mifirePHP->log($segurocotizacion_telefono, "TELEFONO: ");
  		 
  		$mifirePHP->log($segurocotizacion_genero, "GENERO: ");
  		$mifirePHP->log($segurocotizacion_edad, "EDAD: ");
  		$mifirePHP->log($segurocotizacion_persona, "PERSONA: ");
  		$mifirePHP->log($segurocotizacion_armadora, "ARMADORA: ");
  		$mifirePHP->log($segurocotizacion_marca, "MARCA: ");
  		$mifirePHP->log($segurocotizacion_version, "VERSION: ");
  		$mifirePHP->log($segurocotizacion_estado, "ESTADO: ");
  		$mifirePHP->log($segurocotizacion_cp, "CODIGO POSTAL:");
  		$mifirePHP->log($segurocotizacion_cobertura, "COBERTURA: ");
  		$mifirePHP->log($segurocotizacion_formapago, "FORMA DE PAGO: ");
  		 
  		//FIN DE DEBUG DE DATOS
  		 
  		//
  		$json = array();
  		//validacion de datos del formulario
  		if (empty($segurocotizacion_name) || empty($segurocotizacion_apellidos) || empty($segurocotizacion_telefono) || empty($segurocotizacion_edad) || empty($segurocotizacion_armadora) || empty($segurocotizacion_marca) || empty($segurocotizacion_version) || empty($segurocotizacion_estado) || empty($segurocotizacion_cp)|| empty($segurocotizacion_cobertura) || empty($segurocotizacion_formapago) || empty($segurocotizacion_email)) 
  		{
  			$mifirePHP->log(true, "FALTAN DATOS");
  			$json['errors'][] = "Llenar los campos requeridos";
  			$this->response->setOutput(json_encode($json));
  			return;
  		}
  		
  		if(!preg_match("/^[a-zA-Z]+$/", $segurocotizacion_name)){
  			$json['errors'][] = "Poner solo letras en campo Nombre";
  		}
  		if(!preg_match("/^[a-zA-Z]+$/", $segurocotizacion_apellidos)){
  			$json['errors'][] = "Poner solo letras en campo Apellidos";
  		}
  		if(!preg_match("/^0{0,2}([\+]?[\d]{1,3} ?)?([\(]([\d]{2,3})[)] ?)?[0-9][0-9 \-]{6,}( ?([xX]|([eE]xt[\.]?)) ?([\d]{1,5}))?$/", $segurocotizacion_telefono)){
  			$json['errors'][] = "Formato no valido en campo Telefono";
  		}
		
  		if(!preg_match("/^[0-9]+$/i", $segurocotizacion_edad)){
  			$json['errors'][] = "Solo numeros en campo Edad";
  		}
  			
  		if (!preg_match('/^[0-9]{5,5}?$/', $segurocotizacion_cp)) {
  			$json['errors'][] = "Codigo Postal no valido,solo 5 digitos";
  		}
  		
  		if (!isset($this->session->data['captcha']) || ($this->session->data['captcha'] != $this->request->post['segurocotizacion-captcha'])) {
  			$json['errors'][] = "Error en captcha";
  		}
  			
  		if (!filter_var($segurocotizacion_email, FILTER_VALIDATE_EMAIL)) {
  			$json['errors'][] = "Email incorrecto";
  		}
  			
//   		if (!isset($json['errors'])) {
  			
//   			$json['success'] = "Solicitud enviada con exito";
//   		}
  			
  		if (!isset($json['errors'])) {
  			
  			$mifirePHP->log(true, "SIN ERRORES");
  			$datosUsuarioCotizacion['nombre'] =$segurocotizacion_name;
  			$datosUsuarioCotizacion['apellidos'] =$segurocotizacion_apellidos;
  			$datosUsuarioCotizacion['correo'] =$segurocotizacion_email;
  			$datosUsuarioCotizacion['telefono'] =$segurocotizacion_telefono;
  			$datosUsuarioCotizacion['genero'] =$segurocotizacion_genero;
  			$datosUsuarioCotizacion['edad'] =$segurocotizacion_edad;

  			
  			//INSERTAR LOS DATOS DEL USUARIO EN LA TABLA  PROSPECTOS PARA COTIZACION
  			$usuario_cotizacion_id = $this->model_seguros_usuariocotizacion->insertarUsuarioCotizacion($datosUsuarioCotizacion);
  			$mifirePHP->log($usuario_cotizacion_id, "ULTIMO REGISTRO DEL USUARIO");
  			
  			//ENSEGUIDA INSERTAR LOS DATOS DE LA COTIZACION, INSERTAR EL ID DEL USUARIO DE LA COTIZACION.
  			
  			$datosCotizacion['usuario_cotizacion_id'] = $usuario_cotizacion_id;
  			$datosCotizacion['contratante_persona'] = $segurocotizacion_persona;
  			$datosCotizacion['armadora'] = $segurocotizacion_armadora;
  			$datosCotizacion['marca'] = $segurocotizacion_marca;
  			$datosCotizacion['version'] = $segurocotizacion_version;
  			$datosCotizacion['estado'] = $segurocotizacion_estado;
  			$datosCotizacion['codigo_postal'] = $segurocotizacion_cp;
  			$datosCotizacion['cobertura'] = $segurocotizacion_cobertura;
  			$datosCotizacion['forma_de_pago'] = $segurocotizacion_formapago;
  			
  			
  			
  			
  			$numero_cotizacion = $this->model_seguros_cotizacion->insertarCotizacion($datosCotizacion);
  			$mifirePHP->log($numero_cotizacion, "ULTIMO REGISTRO DE COTIZACION PARA MANDAR EN EL CORREO");
  			//ARMADORA
  			//$armadora = $this->model_seguros_seguroscotizacion->obtenerArmadora($segurocotizacion_armadora);
  			//$marca = $this->model_seguros_seguroscotizacion->obtenerArmadora($segurocotizacion_armadora);
  			$recipients = array('david@suljos.tv', 'davidsc23@gmail.com');//Correo de Motor Market y el de Jennifer Ornelas(SEGUROS GNP)
  			
  			
  			$mails[] = array(
  			
						'type' => MsMail::FORMULARIO_SOLICITUD_COTIZACION,
  						'data' => array(
  							'recipients' => $recipients,
  							'nombre_solicitante' => $segurocotizacion_name,
  							'apellidos_solicitante' => $segurocotizacion_apellidos,
  							'email_solicitante' => $segurocotizacion_email,
  						    'telefono_solicitante' => $segurocotizacion_telefono,
  							'genero_solicitante' => $segurocotizacion_genero,
  							'edad_solicitante'  => $segurocotizacion_edad,
  							'persona_solicitante' => $segurocotizacion_persona,
  							'armadora_solicitante' => $segurocotizacion_armadora,
  							'marca_solicitante' => $segurocotizacion_marca,
  							'version_solicitante' => $segurocotizacion_version,
  							'estado_solicitante' => $segurocotizacion_estado,
  							'cp_solicitante' => $segurocotizacion_cp,
  							'cobertura_solicitante' => $segurocotizacion_cobertura,
  							'formapago_solicitante' => $segurocotizacion_formapago,  								
  							'destinatarios'	=> 'info@motormarket.com.mx',
  							'numero_cotizacion'	=> $numero_cotizacion,
  							'cotizacion_seguro' => true
  					)
  			);
  			$this->MsLoader->MsMail->sendMails($mails);
  			$mifirePHP->log(true, "PASO METODO DE ENVIO DE CORREO ");
  			$json['success'] = "Solicitud enviada con exito";
  		}
  		$this->response->setOutput(json_encode($json));
  	}
  	
  	
  	public function marcas() {
  		//instanciar un objeto de la clase FirePHP
  		$mifirePHP = FirePHP::getInstance(true);
  		//evito que se muestren los mensajes en la consola de firebug
  		//$mifirePHP->setEnabled(false);
  		
  		$json = array();
  	
  		$this->load->model('seguros/seguroscotizacion');
  	
  		$marcas_info = $this->model_seguros_seguroscotizacion->obtenerMarcas($this->request->get['armadora_autos_id']);
  		$total_marcas = $this->model_seguros_seguroscotizacion->obtenerTotalMarcas($this->request->get['armadora_autos_id']);
  		$mifirePHP->log($marcas_info, "MARCAS: ");
  	
  		if ($marcas_info) {
  			
  	
  			$json = $marcas_info; 
  		}
  	
  		$this->response->setOutput(json_encode($json));
  	}
  	
  	
  	
}
?>